function __test_putere_directa()
%Functia care testeaza algoritmul metodei puterii directe

%	Test nr. 1

A = [1 2; 2 1]
y = [1 1]'
max = 100
tol = 0.001

[L y ok] = putere_directa(A,y,max,tol);

printf("Valoarea proprie dominanta este:\n");
disp(L);
printf("Vectorul propriu corespunzator acestei valori proprii este:\n");
disp(y);
% solutie: lambda = 3; v = [0.70711; 0.70711]


%	Test nr. 2


A = [1 1 2 2; 2 2 1 1; 1 2 1 2; 2 1 2 1]
y = [1 1 1 1]'
max = 100
tol = 0.001

[L y ok] = putere_directa(A,y,max,tol);

printf("Valoarea proprie dominanta este:\n");
disp(L);
printf("Vectorul propriu corespunzator acestei valori proprii este:\n");
disp(y);
% solutie: lambda = 6; v = [0.5; 0.5; 0.5; 0.5]

%	Test nr. 3


A = [1 2 1; 2 1 2; 1 1 2]
y = [1 1 1]'
max = 100
tol = 0.001

[L y ok] = putere_directa(A,y,max,tol);

printf("Valoarea proprie dominanta este:\n");
disp(L);
printf("Vectorul propriu corespunzator acestei valori proprii este:\n");
disp(y);
% solutie: lambda = 4.3028; v = [0.55181; 0.65035; 0.52206]

endfunction
